Method and apparatus for establishment of private commnunication between devices

ABSTRACT

The invention relates to a method and devices for mutual communication between devices, and to computer programs enabling such communication. According to the invention, in a first device is controlled a transmitter module operable in a local radio communications network to transmit a sequence of radio signal pulses representing a predetermined code. In at least one second device a receiver module is scanning said local radio communications network to detect said predetermined code. A contact network of the user of said at least second device is accessed, and the predetermined code is checked in the second device against the user&#39;s contact network for a match stored in the network profiles for the contacts. Then a validation key is fetched, that relates to a matching contact found in said contact network, and a connection establishment request containing the validation key is sent over said local radio communications network from the second device to the first device. Thus the origin of the connection establishment request is validated in the first device.

FIELD OF INVENTION

The invention relates to protocols for establishment of privatecommunication establishment. More specifically, the invention relates toa method and apparatuses for establishing and supporting a privatecommunication between two devices using a radio communications networkand a contact network having stored network profiles for individualcontacts.

BACKGROUND OF INVENTION

The present on-line dating and social networking services are onlinedominated and do not easily tie in to a user's day to day interactionwith the real world. In many known systems the users spend their timebroadcasting and sifting through a myriad of online social protocols,using intelligent devices, rather than spending valuable timeencountering friends, relatives or business contacts in person.

A standardization body technically involved with the issue of providingcontact between end user of handheld or other intelligent devices is the3GPP working on a specification on “Proximity based Services” (ProSe) inTS23.303 (Rel-12), TR 33.833 and TS 33.303. The 3GPP specification forthis ProSe discovery is based on the E-UTRA radio interface and the useof ProSe Application Codes bound to globally unique ProSe ApplicationIDs in the mobile network operator's Core Network. The ProSe service isa mobile operator focused service and only works between users ofdifferent operators, if this pair of operators has a service contractfor this service and both provide the technical interfaces.

The security threats identified in the ProSe communication includes atleast forged or replayed messages and eavesdropping on the contents ofthe messages, apart from computer viruses etc. that may infect thedevices through software installations and malicious messages.

From the US Patent Application Publication No. 20130276140 is known asystem for electronically aided exchange of information between socialand business contacts using controlled access technologies with tokensof authentication to control access to protected information in acontact's profile. Authentication tokens are used provide relativelyquick access to secured data and other resources in a service provider'ssystem, providing credentials (e.g., username and password) for tokensto be preloaded to client's device. A digital transaction token may beconfigured to provide proof of the client's authorization for a socialor business contact or to a business premise, such as an eventorganizer, club house, and/or hospital, to access the correspondingclient's profile.

A transaction token may be embedded in a profile page code provided in aprofile response. When a profile page code is received and loaded by thebrowser application, the transaction token is loaded by the browser aswell. Thus, the transaction token may be maintained in the code of theprofile page rather than be delivered separately. Thus a sender's andreceiver's wireless devices may exchange transaction tokens in a localwireless protocol, and the wireless devices are coupled together over asecond wireless network. The devices may communicate with a server viacable or other physical connection to a PC, or through any form ofwireless connection, such as Bluetooth, Wi-Fi or MAN (802.11), which mayrelay the tokens or other information either directly or through someintermediary (e.g., a cellular network) to the server. The remainingproblem still being that a unique identifier (ID) is needed, which maybe based on the mobile device, the name, address, billing information(if applicable), username, profile information, photo, preferences andnames of friends.

If two devices want to initiate and conduct direct communication withtechnology available in prior art, there are at least the followingissues:

-   -   a device or other identity information is broadcasted which        allows user tracking,    -   the broadcast is done via a network operator, which need to        support this somehow,    -   broad support from operating systems is required,    -   global approaches to establish a proximity security association        usually would require a global Public Key Infrastructure for        user authentication, which is quite expensive. Alternatively, it        could be shared key based, but due to the number of        combinations, there would be a very, very large number of        symmetric keys.

The identifications provided may be, apart from any device IDinformation, network id's like the SSID identity for WLAN, BluetoothIdentity, or a social network authentication system like the FacebookSingle Sign On.

There is thus a need for a globally working system to set up a securelocal communication, but while preserving the integrity and locationprivacy of the users by not broadcasting the device identity. This meansin practice that a solution must be found that is not built aroundgeographically local and competing operators.

SUMMARY OF THE INVENTION

The invention brings together simple radio interface physical layer L1functionality, sequence codes and contact such as social networks to beused in combination, in order to establish a secure local communicationwith the users privacy preserved and with no user traceability risk. Theinventive method provides a simple and robust way of announcing theavailability to the friends and for discovering buddies, that relies onshort range communication and social network public profile information.

There is no need to involve mobile network operators, but only requiressupport from a social network service, of which there are abundant tochoose between. This makes the inventive method privacy preservingcompared to approaches where device, identity or communications networkID is required.

According to the inventive method, in a first device is controlled atransmitter module operable in a local radio communications network totransmit a sequence of radio signal pulses representing a predeterminedcode.

In at least one second device a receiver module is scanning said localradio communications network to detect said predetermined code. Acontact network of the user of said at least second device is accessed,and the predetermined code is checked in the second device against theuser's contact network for a match stored in the network profiles forthe contacts. Then a validation key is fetched, that relates to amatching contact found in said contact network, and a connectionestablishment request containing the validation key is sent over saidlocal radio communications network from the second device to the firstdevice. Thus the origin of the connection establishment request isvalidated in the first device.

The validation key may be stored in the profile of the contact, or itmay be ad hoc-generated. The key may be used to send a key identifier tothe first device, or one may put in some parameters in the connectionestablishment request so that the recipient at the first device cangenerate the same key and validate the connection establishment request.

The local radio communications network used to transmit and receive thesequence of pulses radio signal representing the predetermined code maybe the same or different from the preferred communications network, overwhich the direct communication is established.

According to one embodiment, the predetermined code is the Morse code.However, the invention is by no means restricted to the Morse code. Thatcode was optimized for transmitting English language characters over atelegraph line; such considerations are largely obsolete in today'sworld and other priorities may suggest a different coding system.

The predetermined code may according to one embodiment be generated byaltering the output signal of said transmitter module between on and offstates, in a manner that represents the predetermined code, or it may begenerated by modulating the output signal of the said transmitter, andas e.g. the Morse code is a binary code, preferably and simply byamplitude or frequency modulation.

The contact network may be a centralized service for personalinformation storage and distribution, i.e. a social media network.Suitable social media networks are e.g. facebook®, Twitter® orInstagram®. The main requirement is that users may store profiles ofthemselves that are at least to some extent accessible by others, andthat may contain a public key with which the connection between user canbe validated.

The local radio communications network used may be one or more of thefollowing:

Bluetooth, WLAN, WiFi Direct, or LTE D2D. Other systems may exist andwill become standardized in the future. It is essential for the purposesof the invention that a direct communication channel is available, i.e.without operator or other authority involvement.

According to further embodiments, the preferred communications networkmay be the internet or a cellular network, or Bluetooth, WLAN, WiFiDirect, or LTE D2D.

A user may store codes for his or her network contacts in advance,whereby only such stored codes may be matched and further processed.Furthermore, the network profiles for said network contacts may containstored beacon information indicating time when a contact will transmithis or her predetermined code. This will allow the listening user totime the sending of connection establishment requests, e.g. if thelistening user want to connect as soon as the transmitting networkcontact is available.

An inventive transmitting apparatus comprises at least one processingcore, at least one memory including computer program code and at leastone communication transceiver module operable in at least one localradio communications network. The processing core, the memory and thecomputer program code are being configured to cause the apparatus atleast to:

-   -   control a radio transmitter in said transceiver module to        transmit a sequence of radio signal pulses representing a        predetermined code identifying a user of said apparatus over a        local radio communications network to listening external        devices;    -   receive from at least one listening external device with a        receiver in said transceiver module a connection establishment        request containing a validation key from a user of said        listening external device, wherein the validation key is related        to the user profile of the user of said apparatus in a contact        network of the user of said external device, and is matched with        said sent predetermined code;    -   validate the origin of said connection establishment request and        opening a direct communications channel to said at least one        listening external device in a preferred radio communications        network.

An inventive listening apparatus comprises at least one processing core,at least one memory including computer program code and at least onecommunication transceiver module operable in at least one local radiocommunications network. The processing core, memory and the computerprogram code being configured to cause the apparatus at least to:

-   -   scan with a receiver in said communication transceiver module        over a local radio communications network for sequence of radio        signal pulses representing a predetermined code;    -   receive from at least one transmitting external device a        sequence of radio signal pulses representing said predetermined        code identifying a user of said transmitting external device;    -   match the identity of said user encoded in said received        predetermined code with a contact identity stored in said        apparatus in a user profile of a contact network;    -   fetch a validation key related to said user of said transmitting        external device and sending a connection establishment request        to said transmitting external device using said validation key;    -   receive a validation for said connection establishment request        from said transmitting external device and opening a direct        communications channel to said transmitting external device in a        preferred communications network.

It is to be noted that the expressions “transmitting apparatus”,“transmitting external device”, “listening external device” and“listening apparatus” are notions used for the sake of clarity. Both thedescribed devices may be transceivers of equal capacity of two-waycommunications over selected networks, but here the notions“transmitting apparatus” and “transmitting external device” are used todescribe the device of the user that is sending out his or her code forothers to scan for and connect, while the notions “listening apparatus”and “listening external device” are used for devices enabled to scan forsuch codes.

The invention also related to a non-transitory computer readable mediumhaving stored thereon a set of computer readable instructions that, whenexecuted by at least one processor, cause an apparatus to at least:

-   -   controlling a radio transmitter to transmit a sequence of radio        signal pulses representing a predetermined code identifying a        user of said apparatus over a local radio communications network        to listening external devices;    -   receiving from at least one listening external device with a        receiver a connection establishment request containing a        validation key from a user of said listening external device,        wherein the validation key is related to the user profile of the        user of said apparatus in a contact network of the user of said        listening external device, and is matched with said sent        predetermined code;    -   validating the origin of said connection establishment request        and opening a direct communications channel to said at least one        listening external device in a preferred radio communications        network.

Finally, the invention also relates to a non-transitory computerreadable medium having stored thereon a set of computer readableinstructions that, when executed by at least one processor, cause anapparatus to at least:

-   -   scanning with a receiver over a local radio communications        network for sequence of radio signal pulses representing a        predetermined code; receiving from at least one transmitting        external device a sequence of radio signal pulses    -   representing said predetermined code identifying a user of said        transmitting external device;    -   matching the identity of a user encoded in said received        predetermined code with a contact identity stored in said        apparatus in a user profile of a contact network;    -   fetching a validation key related to said user of said        transmitting external device and sending a connection        establishment request to said transmitting external device using        said validation key;    -   receiving a validation for said connection establishment request        from said transmitting external device and opening a direct        communications channel to said transmitting external device in a        preferred communications network.

The embodiments of the invention relating to non-transitory computerreadable media may be computer programs in the form of API's(Application Programming Interface), which when run by a processor corein e.g. a mobile device, will enable direct access from an applicationto a short range radio module, giving the application control over atransceiver of the local radio communications network for the purposesof the invention.

INDUSTRIAL APPLICABILITY

The invention is industrially applicable in telecommunications industry,and may easily find useful applications also in entertainment and gameindustries.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an exemplary contact network service that may be used inthe invention;

FIG. 2 shows a communication establishment attempt where a user issearching for another user;

FIG. 3 shows a communication establishment attempt where a user decideswants to check to see if any of his friends are around;

FIG. 4 illustrates an example apparatus capable of supporting at leastsome embodiments of the present invention.

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

Referring to FIG. 1, an example of contact network service 10 is shown.The contact network may be a social network mostly intended for friends,like facebook etc., but it can also a corporate network or anotherclosed user group with a central database. Such a closed user group canbe created for customers of a shopping mall or office campus, where theenterprises advertise their “morse codes” in their social networkprofile for customers to use them for finding the stores (i.e., indoorlocation service) and possible offers. A central database included inthe service 10 is hosting the contact profiles of the users. Thebackbone of the contact or social network is the internet 11, or anyother computer interworking network capable of executing TCP/IP-likeprotocols and transmission.

The contact network service 10 has in its database a list 12 ofsubscribers, each of which may have an OTA (Over The Air) discoverypackage 13, which in a social network environment enables the detectionof that user by his or her friends, as described in connection with FIG.2. The key to the exemplary user is here User1, which is coded in theMorse code. The preferred radio communications network for localconnectivity is here Bluetooth (BT-LE), but as a backup an alternativeradio communications network (Wi-Fi) is also given, should the Bluetoothnot be available in the location. The local communication link can be onWi-Fi Direct, WLAN, Bluetooth or on LTE D2D, or on any other suitabletelemetric technology available in the device. The technology choicesthe user makes in his or her profile depend of course on the devicesused, the infrastructure of the environment and the preferences of theuser.

Further information may consist of the time when the user User1announces his or her availability for OTA contact attempts. This may forenergy saving purposes be organized in beacon cycles. The beacon may usethe time of day as a common reference for all users, and define arepetitive start time of an active beacon duty cycle and the duration ofthe cycle. With such an information exchange (e.g. during earliercommunications between the parties), the discovering device knows inadvance when to contact User1 and may set the discovery parameters forUser1 to be most power and time optimized.

The OTA package is added to social network profiles to make the servicesupport for the over-the-air discovery. The profile information mayinclude a current discovery state of the user, i.e. either the user isdiscoverable or not discoverable. Other status states may existdepending on the user's configuration and preferences. E.g. if user hasdifferent groups of friends, or belongs to different communities, thenthe state may refer to limited discovery where the user is onlydiscoverable by certain group(s). Whenever the user switches on or offhis local link beacon, an application running in the device may beconfigured to update the discovery state in the profile accordingly.Also the amount and details of the information disclosed in the OTAdiscovery package 13 may vary between groups and full details can bemade available to friends only. This depends on the settings availablein the contact or social network.

Reference is now made to FIG. 2, where an inventive communicationestablishment attempt is described by means of a simplified workflow.The listening User2 wants at 20 to check whether his/her friend User1 isavailable for a chat. User2 triggers his social network serviceapplication (“app”) in his mobile device at 21 to fetch the OTAdiscovery package 13 of User1. The information in a user's profile thatis related to his discovery is referred to as a discovery package. At22, the app activates the BT-LE module of the mobile device to searchfor a beacon transmitting the User1's Morse code. If User1 istransmitting, he or she is found at 25. If User1 is not transmitting oris not in the range of the preferred radio communications networks at23, User1 is not found. If User1 is declining contact for the moment, heor she is also not discoverable at 24.

In more detail, the listening User2 scans with his device over one (ormore) radio communications networks for morse signatures. User2 checksthe received morse signatures against his social network records, forwhich purpose he is logged in to his social network. User2 finds thatone of his friends (User1) uses e.g. the morse name XYZ, and fetches thepublic key for the User1 from his social network (e.g. facebook). User2then sends a connection establishment request to User1 which is signedusing the public key of User1. User1 then may validate this connectionestablishment request with his private key. In order to avoid aman-in-the middle attack, User1 may also validate the answer to hisfriend User2 with the public key of User2.

The encryption keys may be used as above to secure the communicationlink between the two devices. Alternatively, it can also be used onlyfor an initial first authentication, and then the devices may directlyexchange a secure key e.g. by a Diffie-Hellmann key exchange protocol orother similar means.

Any user may advertise the Morse code to his friends or a selected groupof such, and the friends have then the code directly available. The codemay be temporary and expire automatically at a set time, e.g. in orderto avoid the user being subject to tracing and/or the social networkaccount to malicious hacking. A new temporary Morse code need to beupdated in the social network, and can then be fetched by the friends. Auser may also cache the Morse codes of his friends in the memory of hisdevice including any code expiry information, to avoid frequent networkset-ups to check already found codes. Thereby only new or renewed codesneed to be checked.

In another embodiment, User2 may first check the code and then make thelocal connectivity receiver of his device only to discover selectedcodes. With this approach, detected Morse codes other than those cachedin memory are ignored. In practice, this may be done by storing thecodes for a number of contacts in advance in the memory of the device,whereby only stored codes are checked for a match against the personalnetwork contacts of User2.

Referring now to FIG. 3, a reverse situation from a perspective of User1is explained where the transmitting User1 decides at 30 to check if anyof his friends are around. He runs a service application (app) in hisdevice at 31 that activates the BT-LE module of the device to transmithis Morse code XYZ. Listening User2 is in the neighborhood and isresponding in 32 by sending a connection request signed with the publickey of User1 to be validated by the same. User 1 now has the options tovalidate the code and take any action 33, 34 with the identified User 2,or to not validate the public key with his private key at 35, as User2is not known to him.

FIG. 4 illustrates an example apparatus capable of supporting at leastsome embodiments of the present invention. Illustrated is device 40,which may comprise, for example, a mobile communication device such as asmartphone. Comprised in device 40 is processor 41, which may comprise,for example, a single- or multi-core processor wherein a single-coreprocessor comprises one processing core and a multi-core processorcomprises more than one processing core. Processor 41 may comprise aQualcomm Snapdragon 800 processor, for example. Processor 41 maycomprise more than one processor. A processing core may comprise, forexample, a Cortex-A8 processing core manufactured by Intel Corporationor a Brisbane processing core produced by Advanced Micro DevicesCorporation. Processor 41 may comprise at least one application-specificintegrated circuit, ASIC. Processor 41 may comprise at least onefield-programmable gate array, FPGA. Processor 41 may be means forperforming method steps in device 40. Processor 41 may be means forperforming method steps in device 40. Processor 41 may be configured, atleast in part by computer instructions, to perform actions.

The device 40 may include a separate memory unit 42, which may comprisea random-access memory and/or permanent memory. Memory 42 may compriseat least one RAM chip. Memory 42 may comprise magnetic, optical and/orholographic memory, for example. Memory 42 is at least in partaccessible to processor 41 and may at least partly be a storage ofcomputer instructions that processor 41 is configured to execute. Whencomputer instructions configured to cause processor 41 to performcertain actions are stored in memory 42, and device 40 overall isconfigured to run under the direction of processor 41 using computerinstructions from memory 42, processor 41 and/or its at least oneprocessing core may be considered to be configured to perform saidcertain actions.

The device 40 has a transceiver unit 46, which comprise a transmitter 43and a receiver 44. Transmitter 43 and receiver 44 are configured totransmit and receive, respectively, information in accordance with atleast one cellular or non-cellular standard. Transmitter 43 may comprisemore than one transmitter. Receiver 44 may comprise more than onereceiver. Transmitter 43 and/or receiver 44 may be configured to operatein accordance with global system for mobile communication, GSM, widebandcode division multiple access, WCDMA, long term evolution, LTE, IS-95,wireless local area network, WLAN, Ethernet and/or worldwideinteroperability for microwave access, WiMAX, standards, for example.

Device 40 also comprises a short range radio communication transceiver45. The transceiver 45 supports at least one such technology, such asBluetooth, WLAN, Wi-Fi Direct, LTE D2D, Wibree or similar technologies.

The device 40 typically comprises a user interface, not shown. A userinterface (UI) may comprise at least one of a display, a keyboard, atouchscreen, a vibrator arranged to signal to a user by causing device40 to vibrate, a speaker and a microphone. A user is able to operatedevice 40 via UI, for example to accept incoming telephone calls, tooriginate telephone calls or video calls, to browse the Internet, tomanage digital files stored in memory 42 or on a cloud accessible viatransmitter 43 and receiver 44, or via NFC transceiver 45, and/or toplay games.

The device 40 may also be arranged to accept a user identity module (notshown), such as a subscriber identity module (SIM) card installable indevice 40. The device 40 may comprise further devices not illustrated inFIG. 4, such as at least one digital camera.

The processor 41 may be furnished with a transmitter arranged to outputinformation from processor 41, via electrical leads internal to device40, to other devices comprised in device 40. Such a transmitter maycomprise a serial bus transmitter arranged to, for example, outputinformation via at least one electrical lead to memory 42 for storagetherein. Alternatively to a serial bus, the transmitter may comprise aparallel bus transmitter. Likewise processor 41 may comprise a receiverarranged to receive information in processor 41, via electrical leadsinternal to device 40, from other devices comprised in device 40. Such areceiver may comprise a serial bus receiver arranged, for example, toreceive information via at least one electrical lead from receiver 44for processing in processor 41. Alternatively to a serial bus, thereceiver may comprise a parallel bus receiver.

Processor 41, memory 42, transmitter 43, receiver 44, the transceiver45, and/or any other modules or devices may be interconnected byelectrical leads internal to device 40 in a multitude of different ways.For example, each of the aforementioned devices may be separatelyconnected to a master bus internal to device 40, to allow for thedevices to exchange information. However, as the skilled person willappreciate, this is only one example and depending on the embodimentvarious ways of interconnecting at least two of the aforementioneddevices may be selected without departing from the scope of the presentinvention.

First, the user needs to install an application layer softwareapplication 47 (an “app”) into the communication device 40 of FIG. 4.The app 47 resides of course physically in the memory unit 42 and is runin the processor 41, but is depicted in FIG. 4 for clarity. The app 47,which may be a computer program in the form of an API, has the right tocontrol the local radio communication transceiver module 45 of thedevice, e.g. by switching its transmitter, sending a L1 carrier signal,on and off. When a user want to be discoverable to his friends, at leastthe transmitter part of the local radio communication transceiver module45 needs to terminate all other tasks, after which the app 47 startsswitching the transmitter on and off according to a predeterminedpattern of sequences. In the case of a Morse code, the sequence for thecode “user1” may be as follows: short off-on-short off-on-long off/shortoff-on—short off-on-short off/short off/short off-on-long off-on-shortoff/short off-on-long off-on-long off-on-long off-on-long off/.

In this sequence, short off=dot; long off=dash, on=separator. Adifferent separator need to be in place between the letters, here theslash “/” above can be replaced by a “long on” or a “very long off”.

With L1 is here meant the physical layer of the local radiocommunications network being used; all network technologies andprotocols have their own standardized layers, and is not in the scope ofthe present invention to present these in any detail. For example, theOpen Systems Interconnection model (OSI) characterizes and standardizesthe internal functions of a communication system by partitioning it intoabstraction layers. The model is a product of the Open SystemsInterconnection project at the International Organization forStandardization (ISO), maintained by the identification ISO/IEC 7498-1.

The software application using the devices according to the inventionneed to have access to the physical layer L1 of the network used, but itis within the capacity of one skilled in the art to design software thatcan manipulate the various layers of a network protocol in order for itto serve the purpose of the SW application in question.

Obviously it lies within the scope of the invention to be able to useother variants for coding such physical layer L1 communication, e.g.where an “off” is the separator mark, and the length of the “on”sequence correspond to either a dot or a dash. Also other sequence codesthan Morse code may be equally useful, as in fact the user of the devicemay not need to know what code is used himself A user may need only totype a desired alphanumeric code name that will then be translated intoa Morse or some other code.

In another more advanced embodiment, the Morse code or some other typeof sequential code may be used to modulate the L1 carrier to a simplePCM code where the dots, dashes and separators would have their owncodeword. This would potentially be more power efficient than switchingthe carrier wave on and off, but would on the other hand require moreadvanced inter-layer communication in the mobile device.

It is to be understood that the embodiments of the invention disclosedare not limited to the particular systems, process steps, or componentsdisclosed herein, but are extended to equivalents thereof as would berecognized by those ordinarily skilled in the relevant arts. It shouldalso be understood that terminology employed herein is used for thepurpose of describing particular embodiments only and is not intended tobe limiting.

Reference throughout this specification to “one embodiment” or “anembodiment” means that a particular feature, structure, orcharacteristic described in connection with the embodiment is includedin at least one embodiment of the present invention. Thus, appearancesof the phrases “in one embodiment” or “in an embodiment” in variousplaces throughout this specification are not necessarily all referringto the same embodiment.

As used herein, a plurality of items, structural elements, components,and/or systems may be presented in a common list for convenience.However, these lists should be construed as though each member of thelist is individually identified as a separate and unique member. Thus,no individual member of such list should be construed as a de factoequivalent of any other member of the same list solely based on theirpresentation in a common group without indications to the contrary. Inaddition, various embodiments and example of the present invention maybe referred to herein along with alternatives for the various componentsthereof It is understood that such embodiments, examples, andalternatives are not to be construed as de facto equivalents of oneanother, but are to be considered as separate and autonomousrepresentations of the present invention.

Furthermore, the described features, structures, or characteristics maybe combined in any suitable manner in one or more embodiments. In thefollowing description, numerous specific details are provided to providea thorough understanding of embodiments of the invention. One skilled inthe relevant art will recognize, however, that the invention can bepracticed without one or more of the specific details, or with othermethods, components, systems, etc. In other instances, well-knownstructures or operations are not shown or described in detail to avoidobscuring aspects of the invention.

While the forgoing examples are illustrative of the principles of thepresent invention in one or more particular applications, it will beapparent to those of ordinary skill in the art that numerousmodifications in form, usage and details of implementation can be madewithout the exercise of inventive faculty, and without departing fromthe principles and concepts of the invention. Accordingly, it is notintended that the invention be limited, except as by the claims setforth below.

1-30. (canceled)
 31. A method of communication between devices,comprising the steps of: controlling in a first device a transmittermodule operable in a local radio communications network to transmit asequence of radio signal pulses representing a predetermined code;scanning in at least one second device by a receiver module for saidlocal radio communications network to detect said predetermined code;accessing with said at least one second device a contact network of theuser of said at least second device; checking in said at least onesecond device said predetermined code against the user's contact networkfor a match stored in the network profiles for the contacts; fetching atleast a validation key related to a matching contact found in saidcontact network; sending over said local radio communications networkfrom said at least one second device a connection establishment requestusing at least said validation key to said first device; validating theorigin of the said connection establishment request in said firstdevice.
 32. A method according to claim 31, wherein the validation ofsaid connection establishment request opens a direct communicationchannel between said first and second devices in a preferredcommunications network.
 33. A method according to claim 31, wherein thecontact network is a centralized service for personal informationstorage and distribution.
 34. A method according to claim 31, whereinthe local radio communications network is selected from one or more ofthe following: Bluetooth, WLAN, WiFi Direct, or LTE D2D.
 35. Anapparatus comprising at least one processing core, at least one memoryincluding computer program code and at least one communicationtransceiver module operable in at least one local radio communicationsnetwork, the at least one memory and the computer program code beingconfigured to, with the at least one processing core, cause theapparatus at least to: controlling a radio transmitter in saidtransceiver module to transmit a sequence of radio signal pulsesrepresenting a predetermined code identifying a user of said apparatusover a local radio communications network to listening external devices;receiving from at least one listening external device with a receiver insaid transceiver module a connection establishment request containing avalidation key from a user of said listening external device, whereinthe validation key is related to the user profile of the user of saidapparatus in a contact network of the user of said external device, andis matched with said sent predetermined code; validating the origin ofsaid connection establishment request and opening a directcommunications channel to said at least one listening external device ina preferred radio communications network.
 36. An apparatus comprising atleast one processing core, at least one memory including computerprogram code and at least one communication transceiver module operablein at least one local radio communications network, the at least onememory and the computer program code being configured to, with the atleast one processing core, cause the apparatus at least to: scanningwith a receiver in said communication transceiver module over a localradio communications network for sequence of radio signal pulsesrepresenting a predetermined code; receiving from at least onetransmitting external device a sequence of radio signal pulsesrepresenting said predetermined code identifying a user of saidtransmitting external device; matching the identity of said user encodedin said received predetermined code with a contact identity stored insaid apparatus in a user profile of a contact network; fetching avalidation key related to said user of said transmitting external deviceand sending a connection establishment request to said transmittingexternal device using said validation key; receiving a validation forsaid connection establishment request from said transmitting externaldevice and opening a direct communications channel to said transmittingexternal device in a preferred communications network.
 37. An apparatusaccording to claim 36, wherein said sequence of radio signal pulsesrepresenting a predetermined code is a Morse code.
 38. An apparatusaccording to claim 36, wherein the contact network is a centralizedservice for personal information storage and distribution.
 39. Anapparatus according to claim 36, wherein the local radio communicationsnetwork is selected from one or more of the following: Bluetooth, WLAN,WiFi Direct, or LTE D2D.
 40. An apparatus according to claim 36, whereinthe preferred communications network is the internet.
 41. An apparatusaccording to claim 36, wherein the preferred communications network is acellular network.
 42. An apparatus according to claim 36, wherein thepreferred communications network is one of the following: Bluetooth,WLAN, WiFi Direct, or LTE D2D.
 43. An apparatus according to claim 36,wherein said sequence of radio signal pulses representing apredetermined code is generated by altering the output signal of saidtransmitter between on and off states.
 44. An apparatus according toclaim 36, wherein said sequence of radio signal pulses representing apredetermined code is generated by modulating the output signal of saidtransmitter to alternate between states as required by saidpredetermined code.
 45. An apparatus according to claim 44, wherein thesequence of radio signal pulses are amplitude modulated.
 46. Anapparatus according to claim 44, wherein the sequence of radio signalpulses are frequency modulated.
 47. An apparatus according to claim 36,wherein said sequence of radio signal pulses representing apredetermined code for said contacts are stored in advance in said atleast one memory to restrict the matching of codes to only stored ones.48. A non-transitory computer readable medium having stored thereon aset of computer readable instructions that, when executed by at leastone processor, cause an apparatus to at least: controlling a radiotransmitter to transmit a sequence of radio signal pulses representing apredetermined code identifying a user of said apparatus over a localradio communications network to listening external devices; receivingfrom at least one listening external device with a receiver a connectionestablishment request containing a validation key from a user of saidlistening external device, wherein the validation key is related to theuser profile of the user of said apparatus in a contact network of theuser of said listening external device, and is matched with said sentpredetermined code; validating the origin of said connectionestablishment request and opening a direct communications channel tosaid at least one listening external device in a preferred radiocommunications network.
 49. A non-transitory computer readable mediumhaving stored thereon a set of computer readable instructions that, whenexecuted by at least one processor, cause an apparatus to at least:scanning with a receiver over a local radio communications network forsequence of radio signal pulses representing a predetermined code;receiving from at least one transmitting external device a sequence ofradio signal pulses representing said predetermined code identifying auser of said transmitting external device; matching the identity of auser encoded in said received predetermined code with a contact identitystored in said apparatus in a user profile of a contact network;fetching a validation key related to said user of said transmittingexternal device and sending a connection establishment request to saidtransmitting external device using said validation key; receiving avalidation for said connection establishment request from saidtransmitting external device and opening a direct communications channelto said transmitting external device in a preferred communicationsnetwork.